package com.itheima.service;

import com.itheima.entity.PageResult;
import com.itheima.entity.QueryPageBean;
import com.itheima.entity.Result;
import com.itheima.pojo.CheckGroup;
import com.itheima.pojo.CheckItem;

import java.util.List;

/**
 * 检查组管理
 */
public interface CheckGroupService {

    /**
     * 新增检查组
     * @param checkGroup     检查组对象
     * @param checkitemIds  检查组包含的检查项的id
     */
    void add(CheckGroup checkGroup, Integer[] checkitemIds);


    /**
     * 查询所有的组的信息
     * @param queryPageBean   封装的类  包含页数  每页条数  模糊查询的条件
     * @return
     */
    PageResult findPage(QueryPageBean queryPageBean);

    /**
     * 通过id 插叙检查组信息
     * @param id  通过id进行查询
     * @return
     */
    CheckGroup findById(Integer id);


    /**
     * 通过id 通过检查组的id查询所有的检查项
     * @param id  通过id进行查询
     * @return  所有的检查组的集合
     */
    List<Integer> findCheckItemIdsByCheckGroupId(Integer id);

    /**
     * 通过
     *
     * @param checkGroup   检查组
     * @param checkitemIds 所有检查项的id
     * @return
     */
    void update(CheckGroup checkGroup, Integer[] checkitemIds);

    /**
     * 删除检查组
     * @return
     */
    void delete(Integer id);

    /**
     * 查询所有的检查组
     * @return  所有的检查组的集合
     */
    List<CheckGroup> findAll();
}
